#!/bin/bash

# 嘀嗒 uni-app Android调试启动脚本
# 使用方法: ./start-android-debug.sh

echo "🚀 嘀嗒 uni-app Android调试启动脚本"
echo "======================================"

# 检查Node.js
if ! command -v node &> /dev/null; then
    echo "❌ 错误: 未找到Node.js，请先安装Node.js"
    echo "   下载地址: https://nodejs.org/"
    exit 1
fi

echo "✅ Node.js版本: $(node --version)"

# 检查npm
if ! command -v npm &> /dev/null; then
    echo "❌ 错误: 未找到npm"
    exit 1
fi

echo "✅ npm版本: $(npm --version)"

# 检查adb
if ! command -v adb &> /dev/null; then
    echo "⚠️  警告: 未找到adb，真机调试可能无法使用"
    echo "   请安装Android SDK并配置环境变量"
    echo "   参考: ANDROID_DEBUG.md"
else
    echo "✅ adb已安装"
    
    # 检查连接的设备
    echo "📱 检查连接的Android设备..."
    devices=$(adb devices | grep -v "List of devices" | grep -v "^$" | wc -l)
    if [ $devices -gt 0 ]; then
        echo "✅ 发现 $devices 个连接的设备:"
        adb devices
    else
        echo "⚠️  未发现连接的Android设备"
        echo "   请确保:"
        echo "   1. 设备已通过USB连接"
        echo "   2. 已开启开发者选项和USB调试"
        echo "   3. 已授权电脑调试权限"
    fi
fi

echo ""
echo "📦 检查项目依赖..."

# 检查package.json
if [ ! -f "package.json" ]; then
    echo "❌ 错误: 未找到package.json文件"
    echo "   请确保在项目根目录下运行此脚本"
    exit 1
fi

# 检查node_modules
if [ ! -d "node_modules" ]; then
    echo "📥 安装项目依赖..."
    npm install
    if [ $? -ne 0 ]; then
        echo "❌ 依赖安装失败"
        exit 1
    fi
else
    echo "✅ 项目依赖已安装"
fi

echo ""
echo "🎯 选择调试方式:"
echo "1. H5调试 (推荐用于快速开发)"
echo "2. 微信小程序调试"
echo "3. 查看Android调试指南"
echo "4. 检查HBuilderX安装状态"
echo "5. 退出"

read -p "请选择 (1-5): " choice

case $choice in
    1)
        echo "🌐 启动H5调试模式..."
        echo "浏览器将自动打开 http://localhost:3000"
        npm run dev:h5
        ;;
    2)
        echo "📱 启动微信小程序调试模式..."
        echo "请在微信开发者工具中导入 dist/dev/mp-weixin 目录"
        npm run dev:mp-weixin
        ;;
    3)
        echo "📖 打开Android调试指南..."
        if command -v open &> /dev/null; then
            open ANDROID_DEBUG.md
        elif command -v xdg-open &> /dev/null; then
            xdg-open ANDROID_DEBUG.md
        else
            echo "请手动打开 ANDROID_DEBUG.md 文件查看详细指南"
        fi
        ;;
    4)
        echo "🔍 检查HBuilderX安装状态..."
        if [ -d "/Applications/HBuilderX.app" ]; then
            echo "✅ 发现HBuilderX安装在 /Applications/HBuilderX.app"
            echo "   可以使用HBuilderX进行真机调试"
        elif [ -d "$HOME/Applications/HBuilderX.app" ]; then
            echo "✅ 发现HBuilderX安装在 $HOME/Applications/HBuilderX.app"
            echo "   可以使用HBuilderX进行真机调试"
        else
            echo "⚠️  未发现HBuilderX安装"
            echo "   下载地址: https://www.dcloud.io/hbuilderx.html"
            echo "   或者使用CLI方式进行开发"
        fi
        ;;
    5)
        echo "👋 退出"
        exit 0
        ;;
    *)
        echo "❌ 无效选择"
        exit 1
        ;;
esac

echo ""
echo "📚 更多帮助:"
echo "   - 查看 ANDROID_DEBUG.md 获取详细调试指南"
echo "   - 查看 README.md 了解项目信息"
echo "   - 访问 https://uniapp.dcloud.io/ 查看官方文档"
echo ""
echo "🎉 调试愉快！"